student = {'王芳': {'java': 89,
                    'python': 90,
                    'mysql': 46},
            '王扬拢': {'java': 99,
                    'python': 95,
                    'mysql': 70}
           }

# 学生信息管理系统页面设计
def pt():
    print('****************学生信息管理系统*****************')
    print('*******************功能菜单********************')
    print('\t\t\t1. 显示所有学生信息')
    print('\t\t\t2. 录入学生信息')
    print('\t\t\t3. 删除学生信息')
    print('\t\t\t4. 修改学生信息')
    print('\t\t\t5. 查找学生全部信息')
    print('\t\t\t0. 退出程序')
    print('*********************************')

def main():
    print("========================欢迎使用学生信息管理系统===================================")
    while True:
        pt()
        i = int(input("请输入要操作的数字: "))
        if i == 0:
            break
        elif i==1:
            getName()
        elif i==2:
            ist()
        elif i == 3:
                dell()
        elif i == 4:
                gai()
        elif i == 5:
            grades()
    print("========================以为您退出学生信息管理系统，期待您的再次使用===================================")

def getName():
    for i in student.keys():
        print(i)
# 评级判断
def grades(): #查
    for stu in student: # 取student字典的人名
        print("*********************************")
        sum =0 #分数计数器
        for stu2 in student[stu]: # 取studen字典的学科
            sum+=student[stu][stu2] #求总分
            avg =sum/3 #求平均分
            if student[stu][stu2] < 60:
                print(f"* {stu}的{stu2}成绩为:{student[stu][stu2]}，评级为：不及格")
            elif student[stu][stu2] <= 70:
                print(f"* {stu}的{stu2}成绩为:{student[stu][stu2]}，评级为：及格")
            elif student[stu][stu2] <= 80:
                print(f"* {stu}的{stu2}成绩为:{student[stu][stu2]}，评级为：良")
            elif student[stu][stu2] <= 100:
                print(f"* {stu}的{stu2}成绩为:{student[stu][stu2]}，评级为：优秀")
        print("=================================")
        print(f"* {stu}的总分为：{sum},平均分为：{avg}")
        print("**********************************")

def ist():# 增
    while True:
        name = input("请输入同学名字：")
        ja = int(input("请输入Java成绩："))
        py = int(input("请输入pythom成绩："))
        my = int(input("请输入mysql成绩："))
        student2 ={name:{
            'java': ja,
            'python': py,
            'mysql': my
        }}
        student.update(student2)
        tui = input("还要继续添加吗？（'yes'or'no'默认no）")
        if tui=='yes':
            continue
        else:
            break

def dell(): # 删
    while True:
        getName()
        i=str(input("请输入想要删除的姓名："))
        del(student[i])
        print("↓↓↓↓↓↓↓↓删除后↓↓↓↓↓↓↓↓↓↓")
        getName()
        tui = input("还要继续删除吗？（'yes'or'no'默认no）")
        if tui == 'yes':
            continue
        else:
            break

def gai(): #改
    while True:
        name = input("请输入要改的同学名字：")
        ja = int(input("请输入要改的Java成绩："))
        py = int(input("请输入要改的pythom成绩："))
        my = int(input("请输入要改的mysql成绩："))
        student2 ={name:{
            'java': ja,
            'python': py,
            'mysql': my
        }}
        student.update(student2)
        tui = input("还要继续修改吗？（'yes'or'no'默认no）")
        if tui=='yes':
            continue
        else:
            break

if __name__ == '__main__':
    main()
